Haskell

Haskell
Logo of Haskell
Парадигмафункционален, lazy, modular
Реализиране през1990
АвторСаймън Пейтън-Джоунс, Филип Уадлър
Типизация на даннитестатична
Програмни диалектиHelium
Повлиян отlambda calculus,[1] Miranda,[1] Clean,[1] FP,[1] Gofer,[1] Hope and Hope+,[1] Id,[1] ISWIM,[1] KRC,[1] Lisp,[1] ML and Standard ML,[1] Orwell, SASL,[1] SISAL,[1] Scheme[1]
ПовлияваAgda,[2] Bluespec,[3] C++11/Concepts,[4] C#/LINQ,[3][5][6][7] Cayenne,[3] Clean,[3] CoffeeScript,[8] Curry,[3] F#,[9] Frege,[10] Idris[11] Isabelle,[3] Java/Generics,[3] LiveScript,[12] Mercury,[3] Perl 6,[13] Python,[3][14] Scala,[3][15] Swift,[16] Visual Basic 9.0[3][5]
Уебсайтhaskell.org
Haskell в Общомедия

Haskell (Ха̀скъл) е функционален език за програмиране. В частност, той е полиморфично статично-типизиран, „мързелив“ (нищо не се прави, докато не се наложи), чисто функционален език, доста различен от повечето езици за програмиране. Името му е в чест на логика Хаскел Къри, чийто труд в областта на математическата логика е в основата на създаването на функционалните езици. Haskell е базиран на ламбда смятане, следователно ламбда се използва за негово лого.[17] Поради близостта си с математиката и богатството от математически библиотеки езикът е широко използван за решаване на кратки математически задачи.

Haskell се радва на широка общност от потребители, които непрекъснато допринасят нови библиотеки и функционалности. Haskell и SQL повлияват създаването на LINQ (Microsoft .NET Framework).

  1. а б в г д е ж з и к л м н о Haskell 98 Language and Libraries: The Revised Report. Cambridge University Press, 2003. ISBN 0521826144.
  2. Norell, Ulf. Dependently Typed Programming in Agda // Chalmers University, 2008. Посетен на 24 октомври 2014.
  3. а б в г д е ж з и к л Hudak, Paul и др. A History of Haskell: Being Lazy with Class // Proceedings of the third ACM SIGPLAN conference on History of programming languages (HOPL III). 2007. ISBN 978-1-59593-766-7. DOI:10.1145/1238844.1238856.
  4. Stroustrup, Bjarne и др. Design of Concept Libraries for C++ // Proceedings of the International Conference on Software Language Engineering. 2011. Посетен на 24 октомври 2014.
  5. а б Meijer, Erik. Confessions of a Used Programming Language Salesman: Getting the Masses Hooked on Haskell // OOPSLA 2007.
  6. Meijer, Erik. C9 Lectures: Dr. Erik Meijer – Functional Programming Fundamentals, Chapter 1 of 13 // Channel 9. Microsoft, 1 октомври 2009. Архивиран от оригинала на 2012-06-16. Посетен на 9 февруари 2012.
  7. Drobi, Sadek. Erik Meijer on LINQ // InfoQ. QCon SF 2008, C4Media Inc., 4 март 2009. Посетен на 9 февруари 2012.
  8. Heller, Martin. Turn up your nose at Dart and smell the CoffeeScript // JavaWorld. InfoWorld, 18 октомври 2011. Архивиран от оригинала. Посетен на 9 февруари 2012.
  9. Syme, Don, Granicz, Adam, Cisternino, Antonio. Expert F#. Apress, 2007. с. 2. F# also draws from Haskell particularly with regard to two advanced language features called sequence expressions and workflows.
  10. Wechsung, Ingo. The Frege Programming Language // Посетен на 24 октомври 2014.
  11. Idris, a language with dependent types // Посетен на 26 октомври 2014.
  12. LiveScript Inspiration // Посетен на 24 октомври 2014.
  13. Glossary of Terms and Jargon // Perl Foundation Perl 6 Wiki. The Perl Foundation, 28 февруари. Архивиран от оригинала на 2012-01-21. Посетен на 9 февруари 2012.
  14. Kuchling, A. M. Functional Programming HOWTO // Python v2.7.2 documentation. Python Software Foundation. Посетен на 24 октомври 2014.
  15. Fogus, Michael. MartinOdersky take(5) toList // Send More Paramedics. 6 август 2010. Посетен на 9 февруари 2012.
  16. Lattner, Chris. Chris Lattner's Homepage // Chris Lattner, 3 юни 2014. Посетен на 24 октомври 2014. The Swift language is the product of tireless effort from a team of language experts, documentation gurus, compiler optimization ninjas, and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course, it also greatly benefited from the experiences hard-won by many other languages in the field, drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.
  17. The Haskell Programming Language

© MMXXIII Rich X Search. We shall prevail. All rights reserved. Rich X Search